Java后端与Vue前端导出Excel表格文件并解决乱码和文件打不开

您所在的位置:网站首页 Vue 前端对象和文件 Java后端与Vue前端导出Excel表格文件并解决乱码和文件打不开

Java后端与Vue前端导出Excel表格文件并解决乱码和文件打不开

2024-07-17 22:18| 来源: 网络整理| 查看: 265

Java 需要用到 poi 两个依赖包,Maven如下:

org.apache.poi poi 5.0.0 org.apache.poi poi-ooxml 5.0.0 Java后端实现

所有的代码都在这个 Controller 中,在实际的场景中,最好进行封装,比如:表格样式、表格的数据收集与整理等等。

import org.apache.poi.hssf.util.HSSFColor; import org.apache.poi.ss.usermodel.*; import org.apache.poi.xssf.usermodel.XSSFWorkbook; import org.springframework.web.bind.annotation.*; import javax.servlet.http.HttpServletResponse; import java.io.IOException; import java.io.OutputStream; import java.net.URLEncoder; import java.util.ArrayList; import java.util.List; /** * @author 江湖人称小程 */ @RestController @RequestMapping("export") public class ExportExcelController { @GetMapping("data") public void exportData(HttpServletResponse response) { // 1. 创建工作空间 Workbook workbook = new XSSFWorkbook(); // .xlsx 用 XSSFWorkbook // Workbook workbook = new HSSFWorkbook(); // .xls 用 HSSFWorkbook // 2. 创建工作表 Sheet sheet = workbook.createSheet("学生信息"); // 2.1 创建标题行(第一行) Row headerRow = sheet.createRow(0); /* 3. 定义一个字体(建议将定义字体这段代码,提取出来进行封装,后续可以定义各式各样的的字体) */ // 3.1 创建字体 Font headerFont = workbook.createFont(); // 3.2 14号大小 headerFont.setFontHeightInPoints((short) 14); // 3.3 黑色字体 headerFont.setColor(HSSFColor.HSSFColorPredefined.BLACK.getIndex()); // 3.4 宋体 headerFont.setFontName("宋体"); /* 4. 声明样式 CellStyle,并设置 */ // 4.1 创建 style CellStyle style = workbook.createCellStyle(); // 4.2 将字体设置进 style 对象中 style.setFont(headerFont); // 4.3 水平和垂直居中 style.setAlignment(HorizontalAlignment.CENTER); style.setVerticalAlignment(VerticalAlignment.CENTER); /* 设置列宽和表头样式 */ String[] headers= {"姓名", "性别", "年龄", "班级" , "联系方式" , "家庭住址"}; for (int i = 0; i


【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3